# 字符串基础操作题
#
# 假设有一个初始字符串
s = "Hello, Python world!"
# 进行下面的操作：
#
#  1. 字符串长度计算
# str_len = len(s)
# print(str_len)

#  2. 计算字符串中"o"字符的个数
# count = s.count("o")
# print(count)

#  3. 将字符串转换为大写
# s1 = s.upper()
# print(s1)

#  4. 将字符串转换为小写
# s2 = s.lower()
# print(s2)

#  5. 查找"Python"在字符串中的位置
# str_index = s.find("Python")
# print(str_index)

#  6. 替换字符串中的"world"为"universe"
# s3 = s.replace("world", "universe")
# print(s3)

#  7. 检查字符串是否以"Hello"开始
# str_start = s.startswith("Hello")
# print(str_start)

#  8. 检查字符串是否以"!"结尾
# str_end = s.endswith("!")
# print(str_end)

#  9. 以","为分隔符，拆分字符串
# split_str = s.split(",")
# print(split_str)

#  10. 去除字符串首尾的"!"
# print(s.strip("!"))

#  11. 字符串反转
# print(s[::-1])

#  12. 字符串切片，获取"Python"
# print(s[6:11])

#  13. 将字符串s中的"Hello,"删除
# print(s.replace("Hello,", ""))

#  14. 拼接两个字符串 "Hello," 和 "World!"
# str1="Hello,"
# str2="World!"
# print(str1+str2)

#  15. 使用f-string合并字符串和数字2021
# print(f"{2021} is a good year")

#  16. 找出'a'第一次出现的位置
# print(s.find('a'))

#  17. 找出'e'最后一次出现的位置
# print(s.rfind('e'))

#  18. 计算字符串中空格的数量
# print(s.count(' '))

#  19. 使用循环遍历字符串中的每个字符
# for i in s:
#     print(i)

#  20. 将字符串转为"列表"形式，每个字符为一个列表元素
# print(list(s))

#  21. 字符串排序（提示：先转换为列表）
# libs = list(s)
# libs.sort()
# print(libs)

#  22. 判断字符串是否为数字
# print(s.isdigit())

#  23. 将列表 `['Hello,', 'Python', 'World!']` 使用空格连接为一个字符串
# libs = ['Hello,', 'Python', 'World!']
# print(' '.join(libs))

#  24. 使用%操作符格式化字符串，将数字100插入到"Number: "后面
# str = "Number: {}"
# print(str.format(100))

#  25. 检查字符串是否全部为小写字母
# print(s.islower())

#  26. 检查字符串是否全部为大写字母
# print(s.isupper())

#  27. 将数字列表 `[1, 2, 3]` 转换成字符串，元素之间用`-`连接
# libs = [1, 2, 3]
# print('-'.join(str(i) for i in libs))

#  28. 找出字符串中所有的"o"的位置
# print([i for i, x in enumerate(s) if x == 'o'])


#  29. 替换字符串中的第一个"o"为"O"
# s = s.replace("o", "O", 1)

#  30. 字符串插入操作，向字符串指定位置插入子字符串"amazing "
# s = s[:6] + "amazing " + s[6:]

# print(s)